<template>
	<view>
		<custom-menu :menuList="menuList"></custom-menu>
	</view>
</template>

<script>
	import store from '@/store'
	export default {
		name: 'publicmenu',
		data() {
			return {
				menuList: []
			}
		},
		onLoad(params) {
			//递归查询对应菜单
			this.handleMenu(params.id)

		},
		methods: {
			handleMenu(id) {
				// 调用递归函数查找对应id的菜单项
				this.menuList = this.findMenuById(store.getters.menu, id).children;
			},

			findMenuById(menuList, targetId) {
				// 遍历当前层级的菜单列表
				for (let i = 0; i < menuList.length; i++) {
					const menu = menuList[i];
					// 如果当前菜单的id匹配目标id，返回该菜单项
					if (menu.id == targetId) {
						return menu;
					}
					// 如果当前菜单有子菜单（children字段），递归查找
					if (menu.children && menu.children.length > 0) {
						const result = this.findMenuById(menu.children, targetId);
						// 如果在子菜单中找到目标id，返回结果
						if (result) {
							return result;
						}
					}
				}
				// 如果整个菜单树中未找到目标id，返回null
				return null;
			}
		}
	}
</script>

<style>
</style>